GPU-ускорение на CUDA теперь доступно программистам Python

Опубликовано:

nvidiaNVIDIA сегодня объявила о том, что программисты, использующие язык с открытым кодом Python, теперь могут применять GPU-ускорение для разработки приложений для высокоскоростных вычислений и анализа больших объемов данных с помощью модели параллельного программирования NVIDIA CUDA.

Python входит в десятку самых популярных языков в мире и используется более чем тремя миллионами пользователей. Он позволяет писать программный код высокого уровня, который воплощает алгоритмические идеи без необходимости использования большого количества команд. Большие библиотеки и передовые возможности Python отлично подходят для широкого спектра научных, инженерных задач и приложений анализа больших объемов данных. Параллельное программирование NVIDIA CUDA поддерживается в NumbaPro, компиляторе Python из нового продукта Anaconda Accelerate от Continuum Analytics.

“Теперь сотни тысяч пользователей Python смогут применять графические процессоры для повышения производительности своих приложений, - отмечает Трэвис Олифант (Travis Oliphant), соучредитель и генеральный директор Continuum Analytics. - С помощью NumbaPro программисты получат лучшее из обоих миров: гибкость и продуктивность Python и высокую производительность графических процессоров NVIDIA”.

Поддержка GPU-ускорения в приложениях стала результатом внедрения исходного кода компилятора CUDA в ядро и процессор параллельных расчетов компиляторной инфраструктуры с открытым кодом LLVM. Среда разработки Python от Continuum Analytics использует LLVM и пакет разработки ПО для компиляции NVIDIA CUDA, чтобы предоставить пользователям Python возможности для создания GPU-ускоряемых приложений.

“Наша исследовательская группа обычно испытывает новые идеи и алгоритмы на языке Python и затем портирует эффективные алгоритмы на C или C++, - рассказывает Виджей Панде (Vijay Pande), профессор химии факультета структурной биологии и информатики в Стэнфордском Университете. - Поддержка CUDA в Python позволяет нам создавать производительный код, используя при этом продуктивные алгоритмы Python”.